/*
 * @文件描述: 
 * @版本: 
 * @作者: 周晨阳
 * @Date: 2021-01-26 15:07:11
 */
#ifndef TOUCH_H
#define TOUCH_H

#include "public.h"


//IO方向设置
#define SDA_IN()                          \
    {                                     \
        GPIOB->MODER &= ~(3 << (11 * 2)); \
        GPIOB->MODER |= 0 << 11 * 2;      \
    } //PB11输入模式
#define SDA_OUT()                         \
    {                                     \
        GPIOB->MODER &= ~(3 << (11 * 2)); \
        GPIOB->MODER |= 1 << 11 * 2;      \
    } //PB11输出模式
//IO操作函数
#define IIC_SCL PBout(10) //SCL
#define IIC_SDA PBout(11) //SDA
#define READ_SDA PBin(11) //输入SDA

#define FT6206_ADDR 0x70 //地址为0x38要移一位

void Touch_Init(void);
void Touch_Test(void);
void I2C1_Start(void);
void I2C1_Stop(void);
void I2C1_Ack(void);
void I2C1_NoAck(void);

void I2C1_Send_Byte(uint8_t dat);
uint8_t I2C1_Read_Byte(uint8_t ack);
uint8_t I2C1_WaitAck(void);

static uint8_t FT6206_Write_Reg(uint8_t startaddr, uint8_t *pbuf, uint32_t len);
uint8_t FT6206_Read_Reg(uint8_t *pbuf, uint32_t len);

int get_MeasureX(void);
int get_MeasureY(void);
void getCoord(int *x, int *y);


#endif